package br.com.keropizza.dao;

import java.util.List;

import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import org.springframework.stereotype.Repository;

import br.com.keropizza.dominio.Pedido;

@Repository
public class PedidoDao {

	@PersistenceContext
	private EntityManager entityManager;

	public void adiciona(Pedido pedido) {
		entityManager.persist(pedido);
	}

	public List<Pedido> buscaTodosPedidos() {
		Query query = entityManager.createQuery("select p from pedido as p");
		return query.getResultList();
	}

	public void altera(Pedido pedido) {
		entityManager.merge(pedido);
	}

	public void remove(Pedido pedido) {
		entityManager.remove(entityManager.getReference(Pedido.class,
				pedido.getId()));
	}
	
	public Pedido buscaPorId(Long id){
		return entityManager.find(Pedido.class, id);
	}
}